home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 2.iso / programr / ssetup26.zip / CSETUP.BA_ / CSETUP.BAS
BASIC Source File  |  1995-07-27  |  26KB  |  540 lines

  1.  
  2. ' ----------------------------------------------------------------------------------------------------------------------------------------------------------
  3. ' Setup Studio 2.6 COPYRIGHT 1993-1995 HEXANET - Header file for Visual Basic (r) and Basic like languages
  4. ' ----------------------------------------------------------------------------------------------------------------------------------------------------------
  5. ' Please, Copy this file into your Global.bas module
  6. ' For more information, see CSETUP.H or CSETUP.HLP
  7. ' Use this file with CSETUP.DLL.
  8. '
  9. ' ----------------------------------------------------------------------------------------------------------------------------------------------------------
  10. '
  11. ' Warning:
  12. ' Whith VB 1.0 I can' t load CSETUP.DLL if the file is not in the Windows\System directory.
  13. ' To avoid this problem, rename CSETUP.DLL into CSETUP.VBX and replace CSETUP.DLL with
  14. ' CSETUP.VBX in this file. Thanks to SETUP.EXE and SETUP.LST, CSETUP.VBX will be copied
  15. ' to the correct diretory.
  16. '
  17. ' ----------------------------------------------------------------------------------------------------------------------------------------------------------
  18.  
  19. ' ---------------------------
  20. ' Special for this version
  21. ' ---------------------------
  22. Declare Function GetModuleHandle Lib "KERNEL.DLL" (ByVal lpszModuleName$) As Integer
  23. Declare Function Ctl3dRegister Lib "CTL3D.DLL" (ByVal hIntanceApp%) As Integer
  24. Declare Function Ctl3dUnregister Lib "CTL3D.DLL" (ByVal hIntanceApp%) As Integer
  25. Declare Function Ctl3dAutoSubclass Lib "CTL3D.DLL" (ByVal hIntanceApp%) As Integer
  26. Declare Function BringWindowToTop Lib "USER.EXE" (ByVal hwnd%) As Integer
  27. Declare Function GetActiveWindow Lib "USER.EXE" () As Integer
  28. Declare Function GetProfileString Lib "KERNEL.DLL" (ByVal lpszSection$, ByVal lpszEntry$, ByVal lpszDefault$, ByVal lpszReturnBuffer$, ByVal cbReturnBuffer%) As Integer
  29. Declare Function GetPrivateProfileString Lib "KERNEL.DLL" (ByVal szSection$, ByVal szKey$, ByVal szDefault$, ByVal szBuffer$, ByVal iCount%, ByVal szFile$) As Integer
  30. Declare Function GetWindowsDirectory Lib "KERNEL.DLL" (ByVal szWinDir$, ByVal iCount%) As Integer
  31. Declare Function WinHelp Lib "USER.EXE" (ByVal hwnd%, ByVal szHelpFile$, ByVal fuCommand%, ByVal lCode&) As Integer
  32.  
  33.  
  34.  
  35. '----------------------------
  36. ' Initialization function
  37. '----------------------------
  38. Declare Sub SetupInitForFunctions Lib "CSETUP.DLL" (ByVal szYourName$, ByVal szPassword$)       '[new]
  39.  
  40. '---------------------------
  41. ' 1 - Information functions
  42. '---------------------------
  43.  
  44.  
  45. '-------------------------------------
  46. ' General System information functions
  47. '-------------------------------------
  48. Global Const BDETECT_WIN386 = 0                 ' 386 mode
  49. Global Const BDETECT_VGA640 = 1                 ' VGA 640 pixels at least
  50. Global Const BDETECT_VGA800 = 2                 ' VGA 800 pixels at least
  51. Global Const BDETECT_VGA1024 = 3                ' VGA 1024 pixels at least
  52. Global Const BDETECT_16COLORS = 4               ' 16 colors at least
  53. Global Const BDETECT_256COLORS = 5              ' 256 colors at least
  54. Global Const BDETECT_COPRO = 6                  ' Math. coprocessor
  55. Global Const BDETECT_286 = 7                    ' 286 CPU
  56. Global Const BDETECT_386 = 8                    ' 386 CPU
  57. Global Const BDETECT_486 = 9                    ' 486 CPU
  58. Global Const BDETECT_MOUSE = 10                 ' Mouse
  59. Declare Function bDetect Lib "CSETUP.dll" (ByVal CVALUE%) As Integer
  60.  
  61. Global Const LDETECT_BUFFERS = 0                ' Buffers declared in CONFIG.SYS
  62. Global Const LDETECT_FILES = 1                  ' Files declared in CONFIG.SYS
  63. Global Const LDETECT_DRIVES = 2                 ' Number of drives
  64. Global Const LDETECT_FREERES = 3                ' Free system resources available ( percent )
  65. Global Const LDETECT_FREERAM = 4                ' Free memory available
  66. Declare Function lDetect Lib "CSETUP.dll" (ByVal CVALUE%) As Long
  67.  
  68.  
  69. '------------------------------
  70. ' Drives information functions
  71. '------------------------------
  72. Global Const DRIVETYPE_REMOTE = 0               ' Network unit
  73. Global Const DRIVETYPE_FIXED = 1                ' HD
  74. Global Const DRIVETYPE_REMOVABLE = 2            ' FD
  75. Global Const DRIVETYPE_UNKNOWN = 3              ' Unknown type
  76.  
  77. Declare Function AskForDriveType Lib "CSETUP.dll" (ByVal drive%) As Integer
  78. Declare Function AskForDriveSpace Lib "CSETUP.dll" (ByVal drive%) As Long
  79. Declare Function IsDriveValid Lib "CSETUP.dll" (ByVal szDriveLetter$) As Integer
  80. Declare Function GetDriveNumber Lib "CSETUP.DLL" (ByVal szPath$) As Integer
  81.  
  82.  
  83.  
  84.  
  85. '--------------------------------
  86. ' Directory information functions
  87. '--------------------------------
  88. 'The following functions were removed (we use the SDK instead)...
  89. 'Declare Function AskForWinDir Lib "CSETUP.dll" () As String
  90. 'Declare Function AskForWinSysDir Lib "CSETUP.dll" () As String
  91. Declare Function DoesDirExist Lib "CSETUP.dll" (ByVal szDirName$) As Integer
  92.  
  93.  
  94.  
  95. '----------------------------
  96. ' Files information functions
  97. '----------------------------
  98. Declare Function DoesFileExist Lib "CSETUP.dll" (ByVal szFileName$, ByVal FormalSearch%) As Integer
  99. Declare Function GetAbsoluteFileName Lib "CSETUP.dll" (ByVal szFileName$, ByVal szBuffer$) As Integer 'changed (2.5)
  100. 'Declare Sub VBGetAbsoluteFileName Lib "CSETUP.dll" (ByVal szFileName$, ByVal szBuffer$)
  101.  
  102.  
  103. '--------------------------------------------
  104. ' Module ( DLL or EXE ) information functions
  105. '---------------------------------------------
  106. Declare Function CountModuleUsage Lib "CSETUP.dll" (ByVal szModule$) As Integer
  107. Declare Function IsDLLLoaded Lib "CSETUP.dll" (ByVal szModule$) As Integer
  108.  
  109.  
  110.  
  111. '--------------------------------------------
  112. ' Environment information functions
  113. '--------------------------------------------
  114. 'Following function is not available with VB (see SSTUDIO.HLP for details)...
  115. Declare Function GetEnvVariable Lib "CSETUP.dll" (ByVal szVariableName$, ByVal szBuffer$) As Integer 'changed (2.5)
  116. 'Declare Sub VBGetEnvVariable Lib "CSETUP.dll" (ByVal szVariableName$, ByVal szBuffer$)
  117. Declare Function CountPathsInPATH Lib "CSETUP.dll" () As Integer
  118. 'Following function is not available with VB (see SSTUDIO.HLP for details)...
  119. Declare Function GetPathFromPATH Lib "CSETUP.dll" (ByVal iPath%, ByVal szBuffer$) As Integer 'changed (2.5)
  120. 'Declare Sub VBGetPathFromPATH Lib "CSETUP.dll" (ByVal iPath%, ByVal szBuffer$)
  121.  
  122.  
  123. '--------------------------------------
  124. ' 2 - Low level file and dir managment
  125. '--------------------------------------
  126.  
  127. '--------------
  128. ' Binary files
  129. '--------------
  130. Declare Function RenameFile Lib "CSETUP.dll" (ByVal szOldFile$, ByVal szNewFile$) As Integer
  131. Declare Function DeleteFile Lib "CSETUP.dll" (ByVal szFile$) As Integer
  132. Declare Function TouchFile Lib "CSETUP.dll" (ByVal szFileName$, ByVal szNewDate$) As Integer
  133. Declare Function SetReadOnly Lib "CSETUP.dll" (ByVal szFileName$, ByVal bRO%) As Integer
  134. Declare Function GetFileLength Lib "CSETUP.dll" (ByVal szFileName$) As Long
  135. Declare Function CopyFile Lib "CSETUP.dll" (ByVal szSrcFile$, ByVal szDestFile$) As Integer
  136. Declare Function ReCreateFile Lib "CSETUP.dll" (ByVal szOriginalName$, ByVal szPieceFileName$) As Integer
  137.  
  138.  
  139. '-------------
  140. ' Ascii files
  141. '-------------
  142. Declare Function CreateAsciiFile Lib "CSETUP.dll" (ByVal szFileName$) As Integer
  143. Declare Function CountFileLines Lib "CSETUP.dll" (ByVal szFileName$) As Long
  144. 'Following function is not available with VB (see SSTUDIO.HLP for details)...
  145. Declare Function GetStringFromFile Lib "CSETUP.dll" (ByVal szFileName$, ByVal lIndex As Long, ByVal szBuffer$) As Integer 'changed (2.5)
  146. 'Declare Sub VBGetStringFromFile Lib "CSETUP.dll" (ByVal szFileName$, ByVal lIndex As Long, ByVal szBuffer$)
  147. Declare Function GetLineFromString Lib "CSETUP.dll" (ByVal szFileName$, ByVal szString$, ByVal lStart As Long) As Long
  148. Declare Function FindStringInTextFile Lib "CSETUP.dll" (ByVal szFileName$, ByVal szString$) As Integer
  149. Declare Function DeleteString Lib "CSETUP.dll" (ByVal szFile$, ByVal iIndex%) As Integer
  150. Declare Function AddString Lib "CSETUP.dll" (ByVal szFile$, ByVal szValue$) As Integer
  151. Declare Function SetLineInFile Lib "CSETUP.dll" (ByVal szFileName$, ByVal szString$, ByVal lIndex As Long) As Integer
  152.  
  153.  
  154.  
  155. '-------------------------------
  156. ' Directory managment functions
  157. '-------------------------------
  158. Declare Function CreateDir Lib "CSETUP.dll" (ByVal szDirName$) As Integer
  159. Declare Function DeleteDir Lib "CSETUP.dll" (ByVal szDirName$) As Integer
  160.  
  161.  
  162.  
  163. '----------------------------------------------------------------------
  164. ' 3 - SDK similar functions useful for Setup programms ( for VB users )
  165. '----------------------------------------------------------------------
  166.  
  167.  
  168. '---------------------
  169. ' INI files managment
  170. '---------------------
  171. Declare Function GetWinIniInt Lib "CSETUP.dll" (ByVal szSection$, ByVal szKey$, ByVal iDefault%) As Integer
  172. Declare Function GetWinIniString Lib "CSETUP.dll" (ByVal szSection$, ByVal szKey$, ByVal szDefault$, ByVal szBuffer$) As Integer 'changed (2.5)
  173. Declare Function GetIniInt Lib "CSETUP.dll" (ByVal szFile$, ByVal szSection$, ByVal szKey$, ByVal iDefault) As Integer
  174. Declare Function GetIniString Lib "CSETUP.dll" (ByVal szFile$, ByVal szSection$, ByVal szKey$, ByVal szDefault$, ByVal szBuffer$) As Integer 'changed (2.5)
  175. Declare Function SetWinnIniString Lib "CSETUP.dll" (ByVal szSection$, ByVal szKey$, ByVal szValue$) As Integer
  176. Declare Function SetIniString Lib "CSETUP.dll" (ByVal szFile$, ByVal szSection$, ByVal szKey$, ByVal szValue$) As Integer
  177.  
  178.  
  179. '---------------------
  180. ' Programms execution
  181. '---------------------
  182. Global Const RESTART_QUIT = 0
  183. Global Const RESTART_REBOOT = &H43
  184. Global Const RESTART_RESTART = &H42
  185.  
  186. Declare Sub QuitWindows Lib "CSETUP.dll" (ByVal cMode%)
  187.  
  188. Global Const APPEXECUTE_SNORMAL = 0               ' Show normal and activate app.
  189. Global Const APPEXECUTE_SICON = 1                 ' Show iconized and activate app.
  190. Global Const APPEXECUTE_SMAX = 2                  ' Show maximized and activate app
  191. Global Const APPEXECUTE_SNOACTIVATE = 3           ' Show normal and do not activate app.
  192.  
  193. Declare Function AppExecute Lib "CSETUP.dll" (ByVal szAppName$, ByVal cShowMode%) As Integer
  194. Declare Function DosTempExec Lib "CSETUP.dll" (ByVal szAppName$, ByVal szParams$) As Integer
  195.  
  196.  
  197.  
  198. '----------------------------
  199. ' 4 - Setup specific helpers
  200. '----------------------------
  201. ' Note:
  202. '
  203. '   These functions may help you to create the Setup Interface before the files transfer.
  204. '   You need to initialise the DLL before any call to these functions
  205. '
  206. '----------------------------
  207.  
  208. '----------------------
  209. ' Sections information
  210. '----------------------
  211. Declare Function GetSectionSize Lib "CSETUP.dll" (ByVal szSectionName$) As Long
  212. Declare Function GetConfigurationSize Lib "CSETUP.dll" () As Long
  213.  
  214.  
  215. '--------------------------------------------------------------
  216. ' File name mangment ( useful to create Parsed Edit controls )
  217. '--------------------------------------------------------------
  218. Global Const FILENAME_SINGLEFILE = 0                    ' Filename must not contain directory specification
  219. Global Const FILENAME_DIRWITHSLASH = 1                  ' Dirname must contain a final \
  220. Global Const FILENAME_DIRWITHOUTSLASH = 2               ' Dirname must not contain a final \
  221. Global Const FILENAME_DIRANDFILE = 3                    ' Dirname + Filename
  222.  
  223. Global Const CHECK_NOCHECK = 0                          ' No check
  224. Global Const CHECK_FILEEXIST = 1                        ' The file must exist
  225. Global Const CHECK_ROOTDIRSEXIST = 2                    ' All root directories ( without the last ) must exist
  226. Global Const CHECK_ALLDIREXIST = 3                      ' All directories must exist
  227. Global Const CHECK_DIRANDFILE = 4                       ' All directories and the file must exist
  228.             
  229. Declare Function IsFileName Lib "CSETUP.dll" (ByVal szFileName$, ByVal IsFileType%, ByVal iCheckMode%) As Integer
  230. 'Following function is not available with VB (see SSTUDIO.HLP for details)...
  231. Declare Function FormatFileNameValid Lib "CSETUP.dll" (ByVal szFileNameIn$, ByVal bWithFinalSlash%, ByVal szBuffer$) As Integer 'changed (2.5)
  232. 'Declare Sub VBFormatFileNameValid Lib "CSETUP.dll" (ByVal szFileNameIn$, ByVal bWithFinalSlash%, ByVal szBuffer$)
  233.  
  234.  
  235. '----------------------------
  236. ' Setup specific directories
  237. ' You probably don' t need to
  238. ' use these functions
  239. '----------------------------
  240. Declare Sub GetOriginalDir Lib "CSETUP.dll" (ByVal szBuffer$)
  241. Declare Sub GetSetupTempDir Lib "CSETUP.dll" (ByVal szBuffer$)
  242.  
  243.  
  244.  
  245.  
  246. '--------------------------------
  247. ' 5 - Setup high level functions
  248. '--------------------------------
  249. ' Note:
  250. '
  251. '     You need to initialise the DLL before any call to these functions
  252. '
  253. '--------------------------------
  254. '
  255. '    Many functions are not required to create a setup programm.
  256. '    At least you should call:
  257. '
  258. '       SetupInitialize( "TEST", "")                    ----> Initialize the DLL
  259. '       AddSectionToCopyList( "Files", "dir" )          ----> Choose a Section to copy
  260. '       DeleteSystemDir()                               ----> To clean up the drive
  261. '
  262. '--------------------------------
  263.            
  264.            
  265. '--------------------------
  266. ' Initialization functions
  267. '--------------------------
  268. Declare Function SetupInitialize Lib "CSETUP.dll" (ByVal szYourName As String, ByVal szPassword As String, ByVal Language%, ByVal szSrcDir$, ByVal szDestDir$) As Integer
  269. Declare Function SetLogFile Lib "CSETUP.dll" (ByVal szLogFileName$) As Integer
  270. Declare Function SetSharedBatchFile Lib "CSETUP.dll" (ByVal szBatchFileName$, ByVal szSysDir$) As Integer
  271.              
  272.              
  273. '-----------------------------------
  274. ' DDE Link with Progman functions
  275. '-----------------------------------
  276. Declare Sub AddItemToProgman Lib "CSETUP.dll" (ByVal szGroupName$, ByVal szExeName$, ByVal szTitle$, ByVal szTextInfo$)
  277. Declare Function AddProgmanGroup Lib "CSETUP.dll" (ByVal szGroupName$) As Integer
  278. Declare Function ShowProgmanGroup Lib "CSETUP.dll" (ByVal szGroupName$) As Integer
  279. Declare Function DeleteProgmanGroup Lib "CSETUP.dll" (ByVal szGroupName$) As Integer
  280. Declare Function AddProgmanItem Lib "CSETUP.dll" (ByVal szProgName$, ByVal szTitle$) As Integer
  281. Declare Function DeleteProgmanItem Lib "CSETUP.dll" (ByVal szItemName$) As Integer
  282. Declare Function QuitProgman Lib "CSETUP.dll" () As Integer
  283.              
  284. '--------------------
  285. ' Specific functions
  286. '--------------------
  287. Declare Function AddSectionToCopyList Lib "CSETUP.dll" (ByVal szSection$, ByVal szDestDir$) As Integer
  288.  
  289. ' These are the values returned by GoSetup Function -----------
  290. Global Const SETUP_SUCCESSFUL = 1               ' Transfert is OK
  291. Global Const SETUP_USERBYPASS = 2               ' User bypassed a file
  292. Global Const SETUP_FAILINCOPYING = 3            ' Fail in copy ( fatal )
  293. Global Const SETUP_USERABORT = 4                ' User abort transfer ( fatal )
  294. Global Const SETUP_CANTCREATEDIR = 5            ' Can' t create destination directoy ( fatal )
  295. Global Const SETUP_WRONGSIZE = 6                ' File size verification error ( Verify mode only - fatal )
  296. Global Const SETUP_INTERNALERROR = 7            ' Error in YOUR programm... ( fatal )
  297.  
  298. ' These are the messages sent by GoSetup Function to hwnd---------
  299. 'Global Const    SN_FILENOTFOUND=        WM_USER + 381   ' File not found in disk - not fatal - lp is FileName
  300. 'Global Const    SN_SRCDIRCHANGE=        WM_USER + 382   ' User change source directory - retrieve new dir with AskForSrcDir
  301. 'Global Const    SN_NEWDISKREQUIRED=     WM_USER + 383   ' Dialog box " New disk required is shown " - lp = new disk label
  302. 'Global Const    SN_FILEINSTALLED=       WM_USER + 384   ' File is installed - lp is destination filename
  303.  
  304.  
  305. Declare Function GoSetup Lib "CSETUP.dll" (ByVal hwnd%, ByVal bUseFinish%) As Integer
  306. Declare Function DeleteSystemDir Lib "CSETUP.dll" () As Integer
  307. 'Following function is not available with VB (see SSTUDIO.HLP for details)...
  308. Declare Function GetWinFileAssociation Lib "CSETUP.dll" (ByVal szFileExtName$, ByVal szBuffer$) As Integer 'changed (2.5)
  309. 'Declare Sub VBGetWinFileAssociation Lib "CSETUP.dll" (ByVal szFileExtName$, ByVal szBuffer$ )
  310.  
  311. Declare Function CreateWinFileAssociation Lib "CSETUP.dll" (ByVal szFileExtName$, ByVal szExeFile$) As Integer
  312. Declare Function ShowWaitCursor Lib "CSETUP.dll" () As Integer
  313. Declare Function HideWaitCursor Lib "CSETUP.dll" () As Integer
  314.  
  315.  
  316. '----------------------
  317. ' Interface functions
  318. '----------------------
  319. Global Const BROSSE_PBLANC = 1          ' Define BRUSH color for background.... ( WHITE )
  320. Global Const BROSSE_PNOIR = 2           ' ... ( BLACK )
  321. Global Const BROSSE_GRIS100 = 3         ' ... ( VERY LIGHT GREY )
  322. Global Const BROSSE_PGRISC = 4          ' ... ( LIGHT GREY )
  323. Global Const BROSSE_GRIS150 = 5         ' ... ( MIDDLE GREY )
  324. Global Const BROSSE_PGRISF = 6          ' ... ( DARK GREY )
  325. Global Const BROSSE_CYAN25 = 7          ' ... ( VERY LIGHT CYAN )
  326. Global Const BROSSE_CYAN50 = 8          ' ... ( LIGHT CYAN )
  327. Global Const BROSSE_CYAN100 = 9         ' ... ( MEDIUM CYAN )
  328. Global Const BROSSE_PCYANC = 10         ' ... ( CYAN )
  329. Global Const BROSSE_PCYANF = 11         ' ... ( DARK CYAN )
  330. Global Const BROSSE_CYAN200 = 12        ' ... ( VERY DARK CYAN )
  331. Global Const BROSSE_BLEU50 = 13         ' ... ( LIGHT BLUE )
  332. Global Const BROSSE_BLEUVERT = 14       ' ... ( LIGHT BLUE GREEN )
  333. Global Const BROSSE_BLEU150 = 15        ' ... ( MEDIUM BLUE )
  334. Global Const BROSSE_PBLEUC = 16         ' ... ( BLUE )
  335. Global Const BROSSE_BLEU200 = 17        ' ... ( DARK BLUE )
  336. Global Const BROSSE_PBLEUF = 18         ' ... ( VERY DARK BLUE )
  337. Global Const BROSSE_BLEU250 = 19        ' ... ( BLUE BLACK )
  338. Global Const BROSSE_VERT25 = 20         ' ... ( VERY LIGHT GREEN )
  339. Global Const BROSSE_VERT50 = 21         ' ... ( LIGHT GREEN )
  340. Global Const BROSSE_VERT100 = 22        ' ... ( MEDIUM GREEN )
  341. Global Const BROSSE_PVERTC = 23         ' ... ( SALAD GREEN )
  342. Global Const BROSSE_VERT200 = 24        ' ... ( LIGHT DARK GREEN )
  343. Global Const BROSSE_VERT250 = 25        ' ... ( MEDIUM DARK GREEN )
  344. Global Const BROSSE_PVERTF = 26         ' ... ( DARK GREEN )
  345. Global Const BROSSE_KAKI = 27           ' ... ( KHAKI )
  346. Global Const BROSSE_JAUNE50 = 28        ' ... ( VERY LIGHT YELLOW )
  347. Global Const BROSSE_JAUNE100 = 29       ' ... ( LIGHT YELLOW )
  348. Global Const BROSSE_PJAUNEC = 30        ' ... ( YELLOW )
  349. Global Const BROSSE_JAUNE150 = 31       ' ... ( DARK YELLOW )
  350. Global Const BROSSE_ORANGE = 32         ' ... ( ORANGE )
  351. Global Const BROSSE_BEIGE = 33          ' ... ( BEIGE )
  352. Global Const BROSSE_PJAUNEF = 34        ' ... ( VERY DARK YELLOW )
  353. Global Const BROSSE_MARRON = 35         ' ... ( BROWN )
  354. Global Const BROSSE_ROSE100 = 36        ' ... ( PINK )
  355. Global Const BROSSE_ROUGE100 = 37       ' ... ( LIGHT RED )
  356. Global Const BROSSE_PROUGEC = 38        ' ... ( RED )
  357. Global Const BROSSE_PROUGEF = 39        ' ... ( DARK RED )
  358. Global Const BROSSE_FUSH50 = 40         ' ... ( VERY LIGHT MAGENTA )
  359. Global Const BROSSE_FUSH100 = 41        ' ... ( LIGHT MAGENTA )
  360. Global Const BROSSE_PFUSHC = 42         ' ... ( MAGENTA )
  361. Global Const BROSSE_PFUSHF = 43         ' ... ( DARK MAGENTA )
  362. Global Const BROSSE_3DRECT = 44         ' ... ( SPECIAL - 3D RECTANGLE )
  363. Global Const BROSSE_3DCIRCLE = 45       ' ... ( SPECIAL - 3D CIRCLE )
  364. Global Const BROSSE_3DLOZANGE = 46      ' ... ( SPECIAL - 3D DIAMOND )
  365.  
  366. Declare Function SetPatternBrush Lib "CSETUP.dll" (ByVal hi%, ByVal iBitmap%) As Integer
  367. Declare Function SetPatternBrushStandard Lib "CSETUP.dll" (ByVal iModel%) As Integer
  368. Declare Function SetupSetTitle Lib "CSETUP.dll" (ByVal szDialogTitle$) As Integer       '[new]
  369. Declare Function SetupSetBeepMode Lib "CSETUP.dll" (ByVal bDiskBeepMode%) As Integer    '[new]
  370. Declare Function SetLogo Lib "CSETUP.dll" (ByVal hi%, ByVal iSetupLogo%) As Integer
  371. Declare Function SetLogoType Lib "CSETUP.dll" (ByVal bTextType%) As Integer
  372. Declare Function SetTextLogo Lib "CSETUP.dll" (ByVal szLogoText$, ByVal szFont$, ByVal iLogoSize%, ByVal clrLogo As Long, ByVal b3D%, ByVal bItalic%) As Integer
  373. Declare Function SetTextDetail Lib "CSETUP.dll" (ByVal szLogoText$, ByVal szFont$, ByVal iLogoSize%, ByVal clrLogo As Long, ByVal b3D%, ByVal bItalic%) As Integer      '[new]
  374. Declare Function SetVerifyMode Lib "CSETUP.dll" (ByVal bVerify%) As Integer
  375.  
  376. Global Const LANGUAGE_ENGLISH = 0               ' Language definition ( use French or English )
  377. Global Const LANGUAGE_FRENCH = 1                ' ...
  378. Global Const LANGUAGE_GERMAN = 2                ' NOT AVAILABLE FOR THIS VERSION !!!
  379. Global Const LANGUAGE_SPANISH = 3               ' NOT AVAILABLE FOR THIS VERSION !!!
  380.  
  381. Declare Function SetupSetLanguage Lib "CSETUP.dll" (ByVal cSetupLanguage%) As Integer   '[new]
  382. Declare Function ShowMainWindow Lib "CSETUP.dll" (ByVal hOriginalWnd%) As Integer
  383.  
  384.  
  385.  
  386. '------------------
  387. ' 6 - New functions
  388. '------------------
  389. Declare Sub CenterDialogBox Lib "CSETUP.dll" (ByVal m_hWnd%)
  390. Declare Sub GiveTheHand Lib "CSETUP.dll" ()
  391. Declare Function CopyFile Lib "CSETUP.dll" (ByVal szSrcFile$, ByVal szDestFile$) As Integer
  392. Declare Function IsFileNewer Lib "CSETUP.dll" (ByVal szFileIn$, ByVal szFileOut$) As Integer
  393. Declare Sub GetBackupName Lib "CSETUP.dll" (ByVal szFileIn$, szNewName$)
  394. Declare Function BackupFile Lib "CSETUP.dll" (ByVal szFileIn$) As Integer
  395. Declare Sub SetupBrowseDir Lib "CSETUP.dll" (ByVal hWnd%, ByVal szBuffer$ )
  396. Declare Function SetupHasWin4Look Lib "CSETUP.dll" () As Integer
  397.  
  398.  
  399.  
  400.  
  401.  
  402. ' // GENERIC SAMPLE ----------------------------------------------------------------------------------
  403.  
  404. 'General ---
  405. Global Const szYourName$ = "TEST"
  406. Global Const szPassword$ = ""
  407. Global Const iBackgroundPaper% = BROSSE_3DCIRCLE
  408. Global Const bBeepMode% = 1
  409. Global Const bVerifyMode% = 1
  410. Global Const szProductName$ = "VB Setup Sample"
  411. Global Const szSetupBoxTitle$ = "VB Setup Sample - Installation"
  412. Global Const szDefaultDir$ = "VBSETUP\"
  413.  
  414. 'Titles ---
  415. Global Const Dialog1Title$ = "VB Setup Sample - 1"
  416. Global Const Dialog2Title$ = "VB Setup Sample - Options"
  417. Global Const Dialog3Title$ = "VB Setup Sample - 3"
  418.  
  419. 'Panel 1 (first panel)---
  420. Global Const iPanel1Bitmap% = 0
  421. Global Const szPanel1Title$ = "Panel 1 Title"
  422. Global Const szPanel1TitleFont$ = "Arial"
  423. Global Const iPanel1TitleSize% = 56
  424. Global Const bPanel1Title3D% = 1
  425. Global Const bPanel1TitleBold% = 1
  426. Global Const szPanel1Detail$ = "Generic Setup program for VB 1.0..."
  427. Global Const szPanel1DetailFont$ = "Times New Roman"
  428. Global Const iPanel1DetailSize% = 26
  429. Global Const bPanel1Detail3D% = 1
  430. Global Const bPanel1DetailBold% = 1
  431. 'I don' t know how we can use RGB with VB so we change these colors on the LOAD event...
  432. Global lPanel1TitleColor& '=RGB(192,192,192)
  433. Global lPanel1DetailColor& '=RGB(0,128,128)
  434.  
  435. 'Panel 2 (directory)---
  436. Global Const iPanel2Bitmap% = 0
  437. Global Const szPanel2Title$ = "Panel 2 Title"
  438. Global Const szPanel2TitleFont$ = "Arial"
  439. Global Const iPanel2TitleSize% = 56
  440. Global Const bPanel2Title3D% = 1
  441. Global Const bPanel2TitleBold% = 1
  442. Global Const szPanel2Detail$ = "Generic Setup program for VB 1.0..."
  443. Global Const szPanel2DetailFont$ = "Times New Roman"
  444. Global Const iPanel2DetailSize% = 26
  445. Global Const bPanel2Detail3D% = 1
  446. Global Const bPanel2DetailBold% = 1
  447. 'I don' t know how we can use RGB with VB so we change these colors on the LOAD event...
  448. Global lPanel2TitleColor& '=RGB(192,192,192)
  449. Global lPanel2DetailColor& '=RGB(0,128,128)
  450.  
  451. 'Panel 3 (options)---
  452. Global Const iPanel3Bitmap% = 0
  453. Global Const szPanel3Title$ = "Panel 3 Title"
  454. Global Const szPanel3TitleFont$ = "Arial"
  455. Global Const iPanel3TitleSize% = 56
  456. Global Const bPanel3Title3D% = 1
  457. Global Const bPanel3TitleBold% = 1
  458. Global Const szPanel3Detail$ = "Generic Setup program for VB 1.0..."
  459. Global Const szPanel3DetailFont$ = "Times New Roman"
  460. Global Const iPanel3DetailSize% = 26
  461. Global Const bPanel3Detail3D% = 1
  462. Global Const bPanel3DetailBold% = 1
  463. 'I don' t know how we can use RGB with VB so we change these colors on the LOAD event...
  464. Global lPanel3TitleColor& '=RGB(192,192,192)
  465. Global lPanel3DetailColor& '=RGB(0,128,128)
  466.  
  467.  
  468. 'Shared batch ---
  469. Global Const bUseSharedBatch% = 0
  470. Global Const szBatchFile$ = ""
  471. Global Const szBatchDir$ = ""
  472.  
  473. 'log file ---
  474. Global Const bUseLogFile% = 1
  475. Global Const szLogFileName$ = "SETUP.LOG"
  476.  
  477. 'Sections (groups)---
  478. Type SECTIONENTRY
  479.  bSelected As Integer
  480.  lSize As Long
  481.  Name As String
  482.  Directory As String
  483.  ELabel As String
  484.  FLabel As String
  485. End Type
  486.  
  487. Global Const NumberOfSections% = 1
  488. Global Section(1 To NumberOfSections%) As SECTIONENTRY
  489.  
  490.  
  491. 'Icons ---
  492. Type SICONENTRY
  493.  szIconRelativeName As String
  494.  EGroupName As String
  495.  EIconName As String
  496.  EIconText As String
  497.  FGroupName As String
  498.  FIconName As String
  499.  FIconText As String
  500. End Type
  501.  
  502. Global Const NumberOfIcons% = 1
  503. Global IconEntry(1 To NumberOfIcons%) As SICONENTRY
  504.  
  505. ' Winfile Associations ---
  506. Global Const bMakeAssociation% = 0
  507. Type sWFAsso
  508.  szProgName As String
  509.  szExt As String
  510. End Type
  511.  
  512. Global Const NumberOfAsso% = 1
  513. Global WFAsso(1 To NumberOfAsso%)  As sWFAsso
  514.  
  515.  
  516. ' And program to launch ---
  517. Global Const szLaunch$ = ""
  518.  
  519.  
  520. '--------------------------------------------------------------
  521. 'Other variables to build the Setup...
  522. '--------------------------------------------------------------
  523. Global szOriginalPath$
  524. Global szTempSetupPath$
  525. Global hIntance%
  526. Global bIsSetupOK%
  527. Global iLanguage%
  528. Global UserPath$
  529. Global UserConfigSize&
  530. Global bRunningSetup%
  531. Global szWinDir$
  532. Global FirstCanClose%
  533. Global DirCanClose%
  534. Global OptionCanClose%
  535. Global bUserAbort%
  536.  
  537.  
  538.  
  539.  
  540.